package com.kangyi.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.time.LocalDate;

/**
 * 申请入住养老院 DTO
 * @author Blank
 * @version 1.0
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
@ApiModel(value = "申请入住养老院的请求数据传输对象")
public class ApplicationDTO implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "用户 ID")
    private Integer userId;
    @ApiModelProperty(value = "头像")
    private String image;
    @ApiModelProperty(value = "入住人姓名")
    private String name;
    @ApiModelProperty(value = "性别（0女, 1男）")
    private Integer gender;
    @ApiModelProperty(value = "年龄")
    private String age;
    @ApiModelProperty(value = "身份证号码")
    private String idCard;
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @ApiModelProperty("出生日期：yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private LocalDate birthday;
    @ApiModelProperty(value = "用户与入住人员的关系（1本人，2父亲，3母亲，4配偶，5其他）")
    private Integer relation;
    @ApiModelProperty(value = "入住人手机号（可选）")
    private String phone;
    @ApiModelProperty(value = "紧急联系人姓名")
    private String urgentName;
    @ApiModelProperty(value = "紧急联系人电话")
    private String urgentPhone;
    @ApiModelProperty(value = "入住时间：yyyy-MM-dd")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private LocalDate checkInTime;
    @ApiModelProperty(value = "养老院 ID")
    private Integer nursingHomeId;
    @ApiModelProperty(value = "房型费用id")
    private Integer roomFeeId;
    @ApiModelProperty(value = "伙食费用 ID")
    private Integer foodFeeId;
    @ApiModelProperty(value = "特殊费用 ID")
    private Integer specialFeeId;
    @ApiModelProperty(value = "备注/过敏史")
    private String allergy;
}
